package bat.iog.hytool.pattern.creator.builder.demo;//package iog.hytool.pattern.builder.demo;
//
///**
// * 根据QueryRule自动构建sql语句
// */
//public class QueryRuleSqlBuilder {
//   
//    /**
//     * 处理like
//     * @param rule
//     */
//    private  void processLike(QueryRule.Rule rule) {
//        if (ArrayUtils.isEmpty(rule.getValues())) {
//            return;
//        }
//        Object obj = rule.getValues()[0];
//
//        if (obj != null) {
//            String value = obj.toString();
//            if (!StringUtils.isEmpty(value)) {
//                value = value.replace('*', '%');
//                obj = value;
//            }
//        }
//        add(rule.getAndOr(),rule.getPropertyName(),"like","%"+rule.getValues()[0]+"%");
//    }
//
//    /**
//     * 处理 =
//     * @param rule
//     */
//    private  void processEqual(QueryRule.Rule rule) {
//        if (ArrayUtils.isEmpty(rule.getValues())) {
//            return;
//        }
//        add(rule.getAndOr(),rule.getPropertyName(),"=",rule.getValues()[0]);
//    }
//
//    /**
//     * 处理 order by
//     * @param rule 查询规则
//     */
//    private void processOrder(Rule rule) {
//        switch (rule.getType()) {
//            case QueryRule.ASC_ORDER:
//                // propertyName非空
//                if (!StringUtils.isEmpty(rule.getPropertyName())) {
//                    orders.add(Order.asc(rule.getPropertyName()));
//                }
//                break;
//            case QueryRule.DESC_ORDER:
//                // propertyName非空
//                if (!StringUtils.isEmpty(rule.getPropertyName())) {
//                    orders.add(Order.desc(rule.getPropertyName()));
//                }
//                break;
//            default:
//                break;
//        }
//    }
//  
//}
